#include "all.h"

#ifndef _HOST_COMPUTER_H_
#define _HOST_COMPUTER_H_

#define FreeCarsBR       Bluetooch_Brate       //波特率

//FreeCars上位机 串口数据显示框 接收通道数，按照上位机设置改变
#define UartDataNum      17

//以下不要修改
#define UartRxBufferLen  100
#define UartRxDataLen    41           //FreeCars上位机发送浮点数据MCU接收，不要改
#define UartRxCmdLen     7	      //FreeCars上位机接收命令数据长度，不要改

#define UartCmdNum  SerialPortRx.Buffer[SerialPortRx.Stack-3]//命令号
#define UartCmdData SerialPortRx.Buffer[SerialPortRx.Stack-2]//命令数据
//尽管数据的长度只要求数组长度为26=22+3+1；但是为了与发送字符串取得统一
//取数据的长度与字符串的长度相等，这样在发送数据是会多发送了一些
//无效位，但是影响不大的
typedef struct
{
  int Stack;
  uint8_t Data;
  uint8_t PreData;
  uint8_t Buffer[UartRxBufferLen];
  uint8_t Enable;
  uint8_t Check;
}SerialPortType;

extern uint8_t uSendBuf[UartDataNum*2];
extern SerialPortType SerialPortRx;

extern double UartData[9];


void Bluetooch_Init(void);


void uart0_isr();                       //接收中断函数
//void UartCmd(uint8_t cmdnum,uint8_t cmddata);//
void sendDataToScope();                 //数据发送函数
void push(uint8_t ,uint16_t);               //向某个通道缓冲区填充数据函数
//void Send_Ov2(void);      //图像发送函数
//void Send_m032(void);      //图像发送函数
void Send_ov77(void);      //图像发送函数
void sendCamImgToCamViewer(void);      //图像发送函数


#endif
